The invention relates to Universal Plug-and-Play (UPnP) networks. In particular, the invention relates to latency and delay compensation in UPnP networks.
Universal Plug-and-Play (UPnP) is a set of computer network protocols promulgated by the UPnP Forum. The goals of UPnP are to allow devices to connect seamlessly and to simplify the implementation of networks in the home (data sharing, communications, and entertainment) and corporate environments. UPnP achieves this by defining and publishing UPnP device control protocols built upon open, Internet-based communication standards.
The UPnP standard was defined for device discovery over local area networks. Latency was not explicitly accounted for under the assumption that it would be nearly negligible in LANs.
When a UPnP control point is powered on, one of the first things it does is to multicast a search command to discover other UPnP devices on the network. Recipients of this command are to respond within an amount of time specified by a parameter embedded in the command. The UPnP standard states that: “The control point should wait at least the amount of time specified in the header for responses to arrive from devices. The wait for responses should be extended by additional time (a second or two) to allow for network propagation and processing delays.” The standard does not specify what this “additional time” should be other than suggesting that it be “a second or two.”
The UPnP standard is also now being extended to consider device discovery over the wide area network; for example, through a UPnP tunnel in the WAN between a cell phone a home gateway. Clearly, latency is non-negligible over the WAN. The UPnP standards body is currently working to address latency through the use of a proxy element in the home that acts on behalf of the remote mobile device. UPnP proxy elements are known in the art, but the implementation of these proxy elements may be complex and not applicable in all systems.